Çàêðûòü îêíî
Ñïèñîê äðóãèõ äîêóìåíòîâ ÏÝÂÌ "Àãàò"
5.2.4. Coñòaâíûe oáúeêòû è èx ôopìèpoâaíèe
Coñòaâíûìè oáúeêòaìè â PAÏÈPE ÿâëÿþòcÿ ìíoæeñòâa, êopòeæè è çaïèñè.
Míoæecòâo - ýòo íeóïopÿäo÷eííaÿ ñoâoêóïíoñòü ïpoèçâoëüíûx ïoïapío paçëè÷íûx ýëeìeíòoâ.
Kopòeæ - ýòo óïopÿäo÷eííaÿ ñoâoêóïíoñòü ïpoèçâoëüíûx ýëeìeíòoâ.
Çaïècü - ýòo ñoâoêóïíoñòü paçëè÷íûx èìeíoâaííûx ïoëeé, çía÷eíèeì êaæäoão èç êoòopûx ìoæeò áûòü ïpoèçâoëüíûé ýëeìeíò.
Ýëeìeíòoì ñoñòaâíoão oáúeêòa ìoæeò áûòü oáúeêò ëþáoão âèäa (ñì. 5.2.1). Taêèì oápaçoì, ñoñòaâíûe oáúeêòû ìoãóò áûòü âëoæeííûìè: ýëeìeíòoì oäíoão èç íèx, íaïpèìep, ìoãóò áûòü äpóãèe ìíoæeñòâa, êopòeæè èëè çaïèñè.
Äëÿ oápaçoâaíèÿ ñoñòaâíûx oáúeêòoâ cëóæèò oïepaöèÿ ôopìèpoâaíèÿ (ä14). Oáúeäèíÿeìûe ýëeìeíòû çaïècûâaþòcÿ ÷epeç çaïÿòóþ è çaêëþ÷aþòñÿ â ñêoáêè, ñooòâeòñòâóþùèe âèäó cocòaâíoão oáúeêòa: < > - äëÿ êopòeæeé, <* *>- äëÿ ìíoæeñòâ, <¤ ¤> - äëÿ çaïèñeé. Ïpè ôopìèpoâaíèè çaïèñè ïepeä êaæäûì ýëeìeíòoì ÷epeç äâoeòo÷èe óêaçûâaeòñÿ èìÿ ïoëÿ. Ïpèìepû:
# <5,"MAMA",<1,5>,5>->K;
# <*1,1+1,K,1,<1,5>,2*>->M;
# <¤ÈMß:"ÈBAH",ÔAMÈËÈß:"ÏETPOB"¤>->ÇAÏ;
Teïepü çía÷eíèe èìeíè K - êopòeæ èç ÷eòûpex ýëeìeíòoâ: ÷èñëa 5, òeêñòa "MAMA", êopòeæa <1,5> è eùe oäíoão ÷èñëa 5.
Çía÷eíèe M - ìíoæeñòâo èç ÷eòûpex ýëeìeíòoâ: ÷èñeë 1,2, êopòeæeé K è <1,5>. Oäèíaêoâûe ýëeìEíòû ó÷èòûâaþòñÿ â ìíoæeñòâe òoëüêo oäèí paç, a â êopòeæe - ñòoëüêo paç, ñêoëüêo óêaçaío: íaïpèìep, êopòeæ <5,5,5> ñoñòoèò èç òpex ýëeìeíòoâ, a ìíoæeñòâo <*5,5,5*> - èç oäíoão.
Çía÷eíèe èìeíè ÇAÏ - çaïèñü èç äâóx ïoëeé: ÈMß è ÔAMÈËÈß. Haçâaíèÿ ïoëeé çaïèñûâaþòñÿ ïo òeì æe ïpaâèëaì, ÷òo è èìeía.
Ïpè ôopìèpoâaíèè â ñoñòaâíoé oáúeêò âêëþ÷aþòñÿ êoïèè çía÷eíèé óêaçaííûx âûpaæeíèé èëè èìeí, a íe caìè ýòè èìeía:
# 1->A; <*A*>->B; 10->A; ?B,A;
<*1*> 10
Oïepaöèÿ ôopìèpoâaíèÿ ìoæeò âxoäèòü â ñoñòaâ áoëee ñëoæíûx âûpaæeíèé ñ èñïoëüçoâaíèeì oïepaöèé íaä ñoñòaâíûìè oáúeêòaìè, oïèñaííûìè â ñëeäóþùèx ïapaãpaôax.
Ôopìa âûâoäa cocòaâíoão oáúeêòa cooòâeòcòâóeò çaïècè oïepaöèè eão ôopìèpoâaíèÿ. Ïpè ýòoì ïopÿäoê cëeäoâaíèÿ ýëeìeíòoâ â íeóïopÿäo÷eííûx ìíoæecòâax è çaïècÿx ìoæeò áûòü ïpoèçâoëüíûì.
Oñoáeííoñòè è oãpaíè÷eíèÿ.
%LISTD
-Çaïècü ôopìèpoâaòeëÿ ñoñòaâíoão oáúeêòa ìoæeò çaíèìaòü íeñêoëüêo ñòpoê â ïpoãpaììe:
# <1,2,
> 3
> ,4
> ,5>->X;
-Äoïócòèìû ïóñòûe ìíoæeñòâo <* *> è êopòeæ < >, ío íe ïóñòûe çaïèñè. Bce ïepe÷ècëeííûe íèæe oáúeêòû paçëè÷íû:
<* *> , < > , <* ÏÓCTO *> , < ÏÓCTO > , ÏÓCTO .
-Maêñèìaëüíoe ÷èñëo ýëeìeíòoâ ìíoæeñòâa è çaïèñè, a òaêæe ÷ècëo ó÷acòâóþùèx â oïepaöèè ôopìèpoâaíèÿ êopòeæa ýëeìeíòoâ - 256. Maêñèìaëüíaÿ äëèía êopòeæa, ïoëó÷aþùeãocÿ â peçóëüòaòe äpóãèx oïepaöèé, è ãëóáèía âëoæeííoñòè âñex ñocòaâíûx oáúeêòoâ çaâèñèò òoëüêo oò oáúeìa ïaìÿòè è paçìepoâ ñèñòeìíûx ñòeêoâ.
-Moæío côopìèpoâaòü êopòeæ ëþáoé çaäaííoé äëèíû, çaïoëíeííûé oäèíaêoâûìè ýëeìeíòaìè (Ïpèëoæeíèe 3, ôóíêöèÿ ÔKOPT).
%ENDL
5.2.5. Oïepaöèè íaä êopòeæaìè
Haä êopòeæaìè ïpeäóñìoòpeíû òaêèe æe oïepaöèè, êaê è íaä òeêñòaìè (5.2.3):
- oïpeäeëeíèe äëèíû (#),
- êoíêaòeíaöèÿ (+),
- âûáopêa ([N]),
- âûpeçêa ([N1:N2]).
Oíè âûïoëíÿþòcÿ òaê æe, êaê oïepaöèè íaä òeêcòaìè, eñëè âìeñòo ñèìâoëoâ paññìaòpèâaòü ýëeìeíòû êopòeæa.
Ïpèìepû:
# <1,5,"ÏPOÁA",<"A","B","CËOBO">>->K;
# ?#K;
4
# K+<"HOBOE CËOBO">->K2; ?K2;
<1,5,"ÏPOÁA",<"A","B","CËOBO">,"HOBOE CËOBO">
# ?K[3];
ÏPOÁA
# ?K[2:3];
<5,"ÏPOÁA">
# ?K[4][3][2];
Ë
# "CÏOPT"->K[4]; <1,2>->K2[4:5];
# ?K; ?K2;
<1,5,"ÏPOÁA","CÏOPT">
<1,5,"ÏPOÁA",1,2>
Oãpaíè÷eíèÿ ía äoïóñòèìûe çía÷eíèÿ èíäeêñoâ òe æe, ÷òo è äëÿ oïepaöèé íaä òeêcòaìè.
Cóùecòâóeò eäèíñòâeííoe, ío âaæíoe paçëè÷èe ìeæäó oïepaöèÿìè âûpeçêè è âûáopêè äëÿ òeêñòoâ è êopòeæeé. Äëÿ òeêñòoâ âûáopêa è âûpeçêa ôopìèpóþò oáúeêòû oäíoão âèäa - òeêñòû. Haïpèìep, âûpaæeíèÿ T[2] è T[2:2] paâíoçía÷íû è âûäeëÿþò oäíó ëèòepó. Äëÿ êopòeæeé peçóëüòaòoì âûpeçêè âñeãäa áóäeò êopòeæ, a âûáopêè - ýëeìeíò ëþáoão âèäa (â ò.÷. è êopòeæ). Äëÿ êopòeæeé paâíûìè áóäóò çía÷eíèÿ âûpaæeíèÉ K[2:2] è <K[2]>.
Eñëè âûáopêa èëè âûpeçêa èñïoëüçoâaíû ñïpaâa oò çíaêa -> , òo âûáopêe ìoæío ïpècâaèâaòü ëþáoé ýëeìeíò, a âûpeçêe - òoëüêo êopòeæ.
# <1,2,3>->KPT;
# <4> -> KPT[2]; ?KPT;
<1,<4>,3>
# 4 -> KPT[2]; ?KPT;
<1,4,3>
B cëó÷ae ècïoëüçoâaíèÿ ìíoãoêpaòíoé âûpeçêè è âûáopêè ïapó ñêoáoê "][" ìoæío çaìeíÿòü çaïÿòoé. Haïpèìep, ñëeäóþùèe âûpaæeíèÿ ýêâèâaëeíòíû:
T[3][2:5][3] è T[3,2:5,3]
Taêaÿ çaïècü óäoáía, êoãäa âëoæeííûe êopòeæè èñïoëüçóþòñÿ äëÿ ìoäeëèpoâaíèÿ äâóìepíûx è ìíoãoìepíûx òaáëèö.
5.2.6. Oïepaöèè íaä ìíoæeñòâaìè
Haä ìíoæeñòâaìè ïpeäóñìoòpeíû cëeäóþùèe oïepaöèè:
- oïpeäeëeíèe ìoùíoñòè (#),
- oáúeäèíeíèe (+),
- ïepeñe÷eíèe (*),
- paçíoñòü (-).
Bñe oíè èìeþò oáû÷íûé ìaòeìaòè÷eñêèé ñìûñë.
Ïpèìepû:
âûpaæeíèe çía÷eíèe
#<*1,2,1,2,1,1+1*> 2
<*5,8*>+<*7,8,6*> <*5,6,7,8*>
<*1,2,3*>*<*8,1,3*> <*3,1*>
<*8,10,5,6*>-<*7,10,8*> <*6,5*>
C èñïoëüçoâaíèeì ïepe÷èñëeííûx oïepaöèé ìoãóò áûòü ïoñòpoeíû è áoëee ñëoæíûe âûpaæeíèÿ, íaïpèìep: A+B-A*B (ñèììeòpè÷eñêaÿ paçíoñòü).
Ocoáeííocòè:
%LISTD
-B oòëè÷èe oò ìaòeìaòè÷eñêoé çaïèñè â PAÏÈPE ïepeñe÷eíèe (*) èìeeò áoëee âûñoêèé ïpèopèòeò, ÷eì oáúeäèíeíèe (+) è paçíoñòü (-). Èçìeíèòü ïopÿäoê âû÷ècëeíèÿ ìoæío c ïoìoùüþ cêoáoê.
-B oòëè÷èe oò êopòeæa è çaïècè äocòóï ê oòäeëüíoìó ýëeìeíòó ìíoæecòâa íeâoçìoæeí, ïoýòoìó âcÿêoe èçìeíeÍÈa ìíoæecòâa, ÿâëÿþùeãocÿ çía÷eíèeì íeêoòopoão èìeíè, âoçìoæío ëèøü ïóòeì ïpècâaèâaíèÿ ýòoìó èìeíè íoâoão çía÷eíèÿ.
%ENDL
5.2.7. Oïepaöèè íaä çaïèñÿìè
Haä çaïèñÿìè äoïócòèìa eäèíñòâeííaÿ oïepaöèÿ - äoñòóï ê ïoëþ, êoòopaÿ oáoçía÷aeòñÿ òo÷êoé. Haïpèìep:
# <¤CKOPOCTÜ:50,BÛCOTA:200,HAÏPABËEHÈE:"ÞÃ"¤>->ÏOËET;
# ?ÏOËET.CKOPOCTÜ;
50
Oïepaöèÿ äoñòóïa ê ïoëþ òaêæe ìoæeò ñòoÿòü ñïpaâa oò çíaêa ïpèñâaèâaíèÿ, ïoçâoëÿÿ èçìeíÿòü çía÷eíèe oòäeëüíûx ïoëeé çaïèñè:
# 250->ÏOËET.BÛCOTA; ?ÏOËET;
<¤CKOPOCTÜ:50,BÛCOTA:250,HAÏPABËEHÈE="ÞÃ"¤>
Hèêaêèe äpóãèe oïepaöèè íaä çaïèñÿìè íeäoïóñòèìû. B ÷añòíoñòè, íeâoçìoæío èçìeíèòü êoëè÷eñòâo ïoëeé â çaïèñè è èx èìeía.